A machine (e.g., a computer or a system of multiple networked computers) may be configured to interact with one or more users by responding to (e.g., answering or otherwise servicing) requests for specified data. For example, a server machine configured as a search engine can receive a search query from a client device and respond to the search query with search results generated by executing the search query against a database that stores potential search results. As another example, a server machine configured as a software distribution server can receive a data request (e.g., for a data record, a software application, or a code fragment) from a client device and respond to the data request by retrieving and providing the requested data (e.g., the data record, the software application, or the code fragment) to the client device. In many cases, however, large numbers of requests (e.g., from many different client devices) can overwhelm a server machine or otherwise exceed its computing resources.